# -*- coding: utf-8 -*-
"""
@Time    : 2025/2/26 18:58 
@Author  : ZhangShenao 
@File    : 5.词形还原.py 
@Desc    : 词形还原

词形还原是将单词还原到它的词典形式,也就是词条的基本形式或词元形式
与词干提取相比,词形还原考虑了单词的词性,并尝试进行更加精确地转换,返回的是一个真实的单词
例如: am、are和is经过词形还原都会变为be
词形还原能够准确地将单词还原到其标准形式,有助于保持语义的准确性
这在需要精确理解和分析文本意义的场合特别有用,如在语义分析或深入的文本理解任务中
"""

import nltk
from nltk.stem import WordNetLemmatizer
from nltk.tokenize import word_tokenize

# 确保已下载wordnet和averaged_perceptron_tagger
nltk.download('wordnet')
# 原始文本
text = "The leaves on the trees are falling quickly in the autumn season."
# 分词
tokens = word_tokenize(text)
# 初始化词形还原器
lemmatizer = WordNetLemmatizer()
# 词形还原（默认为名词）
lemmatized_tokens = [lemmatizer.lemmatize(token) for token in tokens]
print("原始文本:")
print(tokens)
print("\n词形还原结果:")
print(lemmatized_tokens)
